High availability disaster recovery (HADR) is a data replication feature that provides a high availability solution for both partial and complete site failures. HADR protects against data loss by replicating data changes from a source database, sometimes called the primary or simply database server, to a target database, sometimes called the standby, replicate (database) or replication server.
A partial site failure can be caused by a hardware, network, or software failure. Typically, without HADR, the database management system (DBMS) server or the machine where the database resides has to be rebooted. The length of time it takes to restart the database and the machine where it resides is generally unpredictable. Typically, it can take several minutes before the database is brought back to a consistent state and made available. With HADR, the standby database can usually take over in seconds.
A complete site failure can occur when a disaster, such as a fire, causes the entire site to be destroyed. The databases can be situated in different locations. If a disaster occurs at the primary site, data availability is maintained by having the remote standby database take over as the primary database with full functionality. After a takeover operation occurs, the original primary database can be brought back up and returned to its status of primary database.
Synchronous replication is a type of data replication technique typically used to recover data in the event of a partial or complete site failure. Synchronous replication can involve at least two databases and file systems and can deliver quick recovery of data without any significant data loss, while providing protection against problems related to database integrity. This ensures that data is replicated between systems efficiently without any losses.
Synchronous replication creates a remote copy of the data, which is an exact mirror image of the primary copy, when the primary copy is updated. The system with the primary copy proceeds after waiting for the data recording to have completed on the duplicate system.
Generally, in synchronous replication, only after completion of an input/output operation is confirmed at both the primary and mirrored sites, is the update operation considered complete. A rollback can take place at both locations when an incomplete operation takes place which ensures that the remote copy is an exact copy of the primary.
However, techniques for synchronous replication can be improved to increase speed and reliability.